Ext.ns('Tm.role');
Tm.role.RoleAddPanel = Ext.extend(Ext.Panel, {
			id : 'roleAddPanel',
			frame : true,
			autoWidth : true,
			autoHeight : true,
			layout : 'fit',
			dataId : null,
			initComponent : function() {
				var dataId=this.dataId;
	
				var toolBar = new Ext.Toolbar({
							hideBorders : true,
							buttons : [{
										text : '保存',
										iconCls : 'act_acceptIcon',
										handler : function() {
											if (form.getForm().isValid()) {
												form.getForm().submit({
															waitMsg : '正在提交,请稍候...',
															url : 'role/saveOrUpdateRole.do',
															method : 'POST',
															success : function(form, action) {
																App.setAlert('ok', '操作成功');
																var returnRole = Ext.decode(action.response.responseText);
																//console.log(returnRole);
																var roleAddPanel = Ext.getCmp('roleAddPanel');
																var form = userAddPanel.mainpanel.form;
																roleAddPanel.init(returnRole,form)
																if(!roleAddPanel.mainpanel.roleAddPanel){
														
																	var rolePermissionPanel = new Tm.role.RolePermissionPanel({
																		title : '角色权限',
																		ref : 'rolePermissionPanel',
																		roleId : returnRole.id

																	});
																	roleAddPanel.mainpanel.add(rolePermissionPanel);
																	roleAddPanel.mainpanel.setActiveTab(rolePermissionPanel);

																
																}
																
														
															},
															failure : function(action, response) {
																App.setAlert('error', '操作失败');
															}
														});

											}
										}
									}, {
										xtype : 'tbseparator'
									}, {
										text : '重置',
										iconCls : 'act_resetIcon',
										handler : function() {
											form.getForm().reset();

										}
									} ]
						});

				
				var form = new Tm.common.FormPanel({
					tbar : toolBar,
					frame : true,
					title : '基本信息',
					ref : 'form',
					defaults:{
					xtype : 'textfield',
					//margins:'0 5 0 0',
					width:150
					},			
					errorReader : new Tm.common.DataReader(),
					items : [ {
						name : 'id',
						hidden : true
					}, {
						fieldLabel : '角色名称',
						name : 'name',
						allowBlank : false
					}, {
						name : 'enable',
						fieldLabel : '是否启用',
						xtype : 'combo',
						mode : 'local',
						editable : false,
						typeAhead : true,
						forceSelection : true,
						hiddenName : 'enable',
						mode : 'local',
						triggerAction : 'all',
						emptyText : '请选择...',
						selectOnFocus : true,
						store : Tm.data.roleStates,
						allowBlank : false
					} ]
				});
					
	
				
				var mainpanel = new Ext.TabPanel({
					ref : 'mainpanel',
					frame : true,
					height : 360,
					autoWidth:true,
					activeTab : 0,
					defaults : {
						autoScroll : true
					},// 自动出现滚动条
					items : [form],

					enableTabScroll : true
				});
				// mainpanel.setActiveTab('rolemainpanel');

				Ext.apply(this, {
							items : [mainpanel]
						});
				Tm.role.RoleAddPanel.superclass.initComponent.call(this);
			},
			loadData : function() {
				var dataId = this.dataId;
				if (dataId) {
					Ext.Ajax.request({
						url : 'role/loadRole.do',
						params : {
							id : dataId
						},
						success : function(response, action) {
							var data = Ext.decode(response.responseText);
							var roleAddPanel = Ext.getCmp('roleAddPanel');
							var form = roleAddPanel.mainpanel.form;
							roleAddPanel.init(data,form);
							

							
							var rolePermissionPanel = new Tm.role.RolePermissionPanel({
								title : '角色权限',
								ref : 'rolePermissionPanel',
								roleId : data.id

							});
							roleAddPanel.mainpanel.add(rolePermissionPanel);

						
						
						},
						failure : function(response, action) {
							App.setAlert('error', '载入失败');
						}

					});
				}
			},
			init : function(data,form) {
				form.getForm().findField('id').setValue(data.id); 
				form.getForm().findField('name').setValue(data.name);
				form.getForm().findField('enable').setValue(data.enable);
				
			},
			listeners : {
				render : function() {
					this.loadData();
				}
			}
		});
